Thuật toán Knuth–Morris–Pratt

Thuật toán so khớp chuỗi Knuth–Morris–Pratt (hay thuật toán KMP) tìm kiếm sự xuất hiện của một "từ" W trong một "xâu văn bản" S bằng cách tiếp tục quá trình tìm kiếm khi không phù hợp, bản thần "từ" W cho ta đầy đủ thông tin để xác định vị trí bắt đầu của ký tự so sánh tiếp theo, do đó bỏ qua quá trình kiểm tra lại các ký tự đã so sánh trước đó.Thuật toán được Donald Knuth, Vaughan PrattJames H. Morris nghiên cứu độc lập năm 1977, nhưng họ công bố nó cùng nhau.